PeppermintOS Builder Comprehensive Technical Manual
Welcome to the comprehensive technical documentation for PeppermintOS Builder, the enterprise-grade, modular, dynamic, and multi-architecture toolkit for building PeppermintOS images on a Void Linux foundation.
_ _ _ _ _
_ ___ (_) __| | |__ _ _ _ | |__| |___ _ __
| |/ / _ \| |/ _` | | '_ \| | | | | | / _` / _ \| '__|
| < (_) | | (_| | | |_) | |_| | |_| | (_| | __/ |
|_|\_\___/|_|\__,_| |_.__/ \__,_|\__,_|\__,_|\___|_|
Technical Documentation Index
User Guide
- Getting Started & Total Build Isolation
- Comprehensive Usage Manual & Examples
- CLI Complete Technical Reference
- Configuration Guide & JSON Schemas
- 1. Directory Layout & Profile Roles
- 2. Master Manifest:
global_build.json - 3. Architecture Profiles (
configs/architectures/) - 4. Desktop Profiles (
configs/desktops/) - 4. Package Bundle Profiles (
configs/software/) - 5. Runit Service Profiles (
configs/services/) - 6. How to Create a Brand New Desktop Profile
- 7. Custom File Management & Scalable Overlays
- 8. Presets & Edition Profiles (
configs/presets/) - 9. Lifecycle Hooks Engine (
configs/hooks/) - 10. Security Actions & Service Conflict Resolution
- Dynamic Package Rules & Resolution
- Custom Packages & Local XBPS Repositories
- Pepvoid — Modern Nature Collection
- Void-Builder: Hardware, Architecture & Platform Compatibility Matrix
- Build Isolation
- Peppermint Welcome
- PepFetch integration
- Suggested Packages
- PeppermintOS Software Center integration
Overview & Architecture Highlights
PeppermintOS Builder is an advanced Python-based toolkit designed to assemble bootable live ISO images, raw Single-Board Computer (SBC) disk images, and container rootfs archives for Void Linux. It provides a fully decoupled architecture separating configuration resolution, host toolchain management, pseudo-filesystem chroot management, system customization, and output finalization.
Key Capabilities
🌐 12 Hardware Architectures & Platforms: Build for x86_64, x86_64-musl, i686, aarch64, aarch64-musl, armv7l, armv7l-musl, Raspberry Pi (aarch64, armv7l, armv6l), Pinebook Pro, and Apple Silicon (Asahi).
🎯 Unified Presets & Flavours (
-P/--preset): Ready-to-build editions (minimal,desktop-xfce,desktop-kde,desktop-gnome,rescue-sysadmin,developer,gaming).⚡ High-Speed Turbo Pipeline (
--fast,--tmpfs,--benchmark): Multi-threadedzstdcompression level 3, fast formatting, build in memory RAM (tmpfs), and per-stage timing breakdown.📦 Gentoo-Style Stage Seed Tarballs (
--use-tarball,--create-tarball): Bootstraps from reusable base archives and layers delta packages in seconds.🔑 Security & SSH Public Key Ingestion: Inject root passwords, lock accounts, and provision SSH keys directly into
authorized_keys.🪝 Lifecycle Hooks Engine: Execute customized shell scripts at
pre-install,post-install, andpre-isostages.🤖 Interactive Wizard Mode (
-i/--interactive): Intuitive terminal menu for step-by-step image creation.🛡️ Zero Host Dependencies: Downloads verified static
xbps-install.staticbinaries directly from Void Linux infrastructure.🧾 Automated Checksums & Manifests: Automatically generates
.sha256,.sha512,.md5, and.manifest.jsonmetadata for all build artifacts.
Supported Target Architectures
x86_64: Standard 64-bit AMD/Intel PC (glibc)x86_64-musl: 64-bit AMD/Intel PC with Musl C libraryi686: 32-bit Legacy x86 PCaarch64: 64-bit ARM64 Generic (glibc)aarch64-musl: 64-bit ARM64 Generic (Musl)armv7l: 32-bit ARMv7 Hard Float (glibc)armv7l-musl: 32-bit ARMv7 Hard Float (Musl)rpi-aarch64: Raspberry Pi 3/4/5 (64-bit)rpi-armv7l: Raspberry Pi 2/3 (32-bit v7)rpi-armv6l: Raspberry Pi 1/Zero (32-bit v6)pinebookpro: Pine64 Pinebook Pro (RK3399 SoC)asahi: Apple Silicon (M1/M2/M3) Asahi Linux